home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 22
/
Cream of the Crop 22.iso
/
bbs
/
zchss18c.zip
/
SBBS.DOC
< prev
next >
Wrap
Text File
|
1996-07-09
|
12KB
|
235 lines
Zchess System Configuration Example
Zchess Version 1.8
February 11, 1996
This is an example configuration for Zchess specifically for Synchronet
BBS, DIGITAL DYNAMICS. If you wish to try Synchronet on a shareware
basis, you can get a copy from the SBBS support BBSes listed for
Zchess. While I do not personally run a BBS, I have set a few of them
up for the purpose of developing doors. I have found that Synchronet
was easy to use by both the sysop and the user. You can purchase SBBS
from the following address:
Digital Dynamics
PO Box 501, Yorba Linda, CA 92686
(714) 529-6328 Voice
(714) 529-9721 FAX
The Zchess chess door system consists of the following executables:
ZCHESS.EXE
2PGN. EXE
IMPORT.EXE
MAINT.EXE
NETCHESS.EXE
SETUP.EXE
Of these, a complete SBBS setup will include configuration for
ZCHESS.EXE for the door, ZCHESS.EXE for a notification logon event,
MAINT.EXE as a daily or weekly event, and NETCHESS.EXE twice, once for
OUTgoing messages and once for INcomming messages. 2PGN.EXE is
executed from either ZCHESS or MAINT, and normally won't have other
uses. IMPORT.EXE is intended to be run by the sysop who is attempting
to make changes to the database. SETUP.EXE is run by the sysop who is
making changes to the ZCHESS or NETCHESS configurations.
The following setups represent one way that Zchess can be configured.
Each system may differ. These screens were captured from the actual
configuration of an SBBS setup.
NOTE: For Synchronet BBS message transfer, please create the
first message for the sub from the BBS. Netchess is not able
to create a sub from scratch.
ZCHESS As A Chess Door and It's Your Move Notifier:
░░░░╔═════════════════════╗░░░░╔═══════════════════════════════════════════╗░░░
░░░░║ External Programs ║░░░░║ Games Online Programs ║░░░
░░░░╠═════════════════════╣░░░░╠═══════════════════════════════════════════╣░░░
░░░░║ │Fixed Events ║░░░░║ │ZCHESS ║░░░
░░░░║ │Timed Events ║░░░░║ │ZCHESS NOTIFY ║░░░
░░░░║ │Global Swap List ║░░░░║ │ ║░░░
░░░░║ │Ext╔════════════════════╚═══════════════════════════════════════════╝░░░
░░░░║ │Onl║ Games Program Section ║░░░░░░░░░
░░░░╚═════╠══════════════════════════════════════════════════════════╣░░░░░░░░░
░░░░░░░░░░║ │Name Games ║░░░░░░░░░
░░░░░░░░░░║ │Internal Code GAMES ║░░░░░░░░░
░░░░░░░░░░║ │Access Requirements ║░░░░░░░░░
░░░░░░░░░░║ │Available Online Programs... ║░░░░░░░░░
░░░░░░░░░░╚══════════════════════════════════════════════════════════╝░░░░░░░░░
░░░░╔═══════════════════════════════════════════╗░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░║ Online Program Sections ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░╠═══════════════════════════════════════════╣░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░║ │Main ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░║ │Games ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░║ │ ║░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░╚═══════════════════════════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
The Chess DOOR can be configured as given below. Zchess uses only
DOOR.SYS drop files. Also, Zchess was not developed with SBBS's XTRN
libraries. As such, it has it's own communications routines. You must
configure SBBS to NOT intercept I/O interrupts. It is not essential to
force the system to change directories to Zchess, as Zchess will be
able to find all of its subdirectories based on the location of the
executable. Zchess is always a multi-node chess door. If your BBS is
multinodal, configure the Multiple Concurrent Users as YES. If you
have only a single node version of Zchess, but have a multi-tasker
available and would like to play chess againt remote callers, you may
either run Zchess in a separate window using \ZCHESS\LOCAL.BAT.
Alternatively, you may share a session with a user while playing games
by pressing F6 after the user enteres a Game.
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░╔═════╔══════════════════════════════════════════════════════════╗═════╗░░░
░░░░║ Ext║ ZCHESS ║ ║░░░
░░░░╠═════╠══════════════════════════════════════════════════════════╣═════╣░░░
░░░░║ │Fix║ │Name ZCHESS ║ ║░░░
░░░░║ │Tim║ │Internal Code ZCHESS ║ ║░░░
░░░░║ │Glo║ │Start-up Directory C:\ZCHESS ║ ║░░░
░░░░║ │Ext║ │Command Line ZCHESS %f ║═════╝░░░
░░░░║ │Onl║ │Clean-up Command Line ║░░░░░░░░░
░░░░╚═════║ │Execution Cost None ║░░░░░░░░░
░░░░░░░░░░║ │Access Requirements ║░░░░░░░░░
░░░░░░░░░░║ │Execution Requirements ║░░░░░░░░░
░░░░░░░░░░║ │Multiple Concurrent Users Yes ║░░░░░░░░░
░░░░░░░░░░║ │Intercept I/O Interrupts No ║░░░░░░░░░
░░░░░░░░░░║ │Swap BBS out of Memory No ║░░░░░░░░░
░░░░╔═════║ │Modify User Data No ║░░░░░░░░░
░░░░║ ║ │Execute on Event No ║░░░░░░░░░
░░░░╠═════║ │BBS Drop File Type (R) GAP DOOR.SYS ║░░░░░░░░░
░░░░║ │Mai║ │Place Drop File In Node Directory ║░░░░░░░░░
░░░░║ │Gam║ │Time Options... ║░░░░░░░░░
░░░░║ │ ╚══════════════════════════════════════════════════════════╝░░░░░░░░░
░░░░╚═══════════════════════════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
The notifier provides a simple message is the user is active in chess
and has a move in one of his games. Configuring zchess as a logon
event will remind players to visit the door. If the user isn't active
in chess, or doesn't have a move, the notifier will be all but
invisible.
░░░░╔═════╔══════════════════════════════════════════════════════════╗═════╗░░░
░░░░║ Ext║ ZCHESS NOTIFY ║ ║░░░
░░░░╠═════╠══════════════════════════════════════════════════════════╣═════╣░░░
░░░░║ │Fix║ │Name ZCHESS NOTIFY ║ ║░░░
░░░░║ │Tim║ │Internal Code ZCNOTIFY ║ ║░░░
░░░░║ │Glo║ │Start-up Directory C:\ZCHESS ║ ║░░░
░░░░║ │Ext║ │Command Line ZCHESS %f NOTIFY ║═════╝░░░
░░░░║ │Onl║ │Clean-up Command Line ║░░░░░░░░░
░░░░╚═════║ │Execution Cost None ║░░░░░░░░░
░░░░░░░░░░║ │Access Requirements ║░░░░░░░░░
░░░░░░░░░░║ │Execution Requirements ║░░░░░░░░░
░░░░░░░░░░║ │Multiple Concurrent Users Yes ║░░░░░░░░░
░░░░░░░░░░║ │Intercept I/O Interrupts No ║░░░░░░░░░
░░░░░░░░░░║ │Swap BBS out of Memory No ║░░░░░░░░░
░░░░╔═════║ │Modify User Data No ║░░░░░░░░░
░░░░║ ║ │Execute on Event Logon ║░░░░░░░░░
░░░░╠═════║ │BBS Drop File Type (R) GAP DOOR.SYS ║░░░░░░░░░
░░░░║ │Mai║ │Place Drop File In Node Directory ║░░░░░░░░░
░░░░║ │Gam║ │Time Options... ║░░░░░░░░░
░░░░║ │ ╚══════════════════════════════════════════════════════════╝░░░░░░░░░
░░░░╚═══════════════════════════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
The example above allows the notifier to be run as an external program
as well. If the Execute on Event flag is changed to Logon, Only, it
will not appear in the External programs menu.
Note that for both the ZCHESS and the NOTIFIER, you want to try to run
without swapping the BBS out of Memory if at all possible. This will
save some time when starting and exiting the door. I am able to run
ZCHESS in a DesqView window with about 300K memory available. If you
can't provide this much memory without swapping SBBS out, then you
don't have a choice. You might wish to consider not using the notifier
in this case, as users often dislike unnecessary delays during login.
Timed Maintenace Events
NETCHESS and MAINT should be configured as timed events. NETCHESS will
be available for version 2.0 and above. Those registering Zchess 1.8
and above now will be allowed to Beta test NETCHESS now if they so
choose.
░░░░╔═════════════════════╗░░░░╔═══════════════════════════════════════════╗░░░
░░░░║ External Programs ║░░░░║ Timed Events ║░░░
░░░░╠═════════════════════╣░░░░╠═══════════════════════════════════════════╣░░░
░░░░║ │Fixed Events ║░░░░║ │MSGMAINT %!smbutil mp500 *.shd ..\ma║░░░
░░░░║ │Timed Events ║░░░░║ │ZCNETOUT NETCHESS.EXE OUT ║░░░
░░░░║ │Global Swap List ║░░░░║ │ZCNETIN NETCHESS.EXE IN ║░░░
░░░░║ │External Editors ║░░░░║ │ZCMAINT MAINT.EXE ║░░░
░░░░║ │Online Programs ║░░░░╚═══════════════════════════════════════════╝░░░
░░░░╚═════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
For this example NETCHESS.EXE is used twice in the Timed Events
list. It can be configured for a single event by NOT adding the
commandline switches of OUT or IN. Netchess, if not restricted,
with then do all of the processing for incomming messages, then all
of the processing for outgoing messages. Its used twice here to
accomodate the following sequence of events:
1. NETCHESS OUT is called just after midnight, creating messages that
will be retrieved by BBSes calling in during the night.
2. BBSes call in between 2:00 AM and 5:00 AM, retrieve their messages
and post new ones. The messages of course are created by ZCHESS, and
contain the moves for the games.
3. NETCHESS IN is called after 6:00 AM. Messages left by other BBSes
are found, and games are updated. No new messages are created since
players have not yet had a chance to move.
4. MAINT.EXE is called after NETCHESS IN. This performs any
maintenance required, rebuilds that data base, and keeps everything
fresh.
Note that it might be propper to call netchess with no switches
instead of NETCHESS OUT. Should there be any updates to games in the
database, it might prevent unnecessary game reporting. This timing
depends on what BBSes call, act as a hub, the frequency of calls, etc.
so your configuration will likely be a bit different to optimize
communications.
░░░░╔═════════════════════╗░░░░╔═══════════════════════════════════════════╗░░░
░░░░║ External Programs ║░░░░║ Timed Events ║░░░
░░░░╠═════════════════════╣░░░░╠═══════════════════════════════════════════╣░░░
░░░░║ │Fixed Events ║░░░░║ │MSGMAINT %!smbutil mp500 *.shd ..\ma║░░░
░░░░║ │Timed Events ║░░░░║ │ZCNETOUT NETCHESS OUT ║░░░
░░░░║ │Global Swap List ║░░░░║ │ZCNETIN NETCHESS IN ║░░░
░░░░║ │External Editors ║░░░░║ │ZCMAINT MAINT.EXE ║░░░
░░░░║ │Online Programs ║░░░░╚═══════════════════════════════════════════╝░░░
░░░░╚═════════════════════╝░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░╔════════════════════════════════════════════════════════════════════╗░░░░
░░░░░║ ZCNETOUT Timed Event ║░░░░
░░░░░╠════════════════════════════════════════════════════════════════════╣░░░░
░░░░░║ │Internal Code ZCNETOUT ║░░░░
░░░░░║ │Start-up Directory C:\ZCHESS ║░░░░
░░░░░║ │Command Line NETCHESS.EXE OUT ║░░░░
░░░░░║ │Execution Node 1 ║░░░░
░░░░░║ │Execution Days Sun Mon Tue Wed Thu Fri Sat ║░░░░
░░░░░║ │Execution Time 01:00 ║░░░░
░░░░░║ │Requires Exclusive Execution No ║░░░░
░░░░░║ │Force Users Off-line For Event No ║░░░░
░░░░░╚════════════════════════════════════════════════════════════════════╝░░░░
NETCHESS is started sometime after users stop calling in. It is run
daily. This configuration does not require exclusive access. Note,
however, if you have a user on another node who is playing ZCHESS,
NETCHESS will pause this node until the user finishes, with a limit of
fifteen minutes. If NETCHESS is not able to monopolize the ZCHESS
system ( including ZCHESS.EXE, MAINT.EXE and other copies of
NETCHESS.EXE), the output for that night will not be generated. See
ZCHESS.DOC for information about how system monopolies are enforced.